<!DOCTYPE html>
<html>
<head lang="en">
    <meta charset="UTF-8">
    <title>注册or登录</title>
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport"
          content="width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0, user-scalable=no">
    <meta name="format-detection" content="telephone=no">
    <meta name="renderer" content="webkit">
    <meta http-equiv="Cache-Control" content="no-siteapp"/>

    <link rel="stylesheet" href="../AmazeUI-2.4.2/assets/css/amazeui.min.css"/>
    <link href="../css/dlstyle.css" rel="stylesheet" type="text/css">
    <script src="../AmazeUI-2.4.2/assets/js/jquery.min.js"></script>
    <script src="../AmazeUI-2.4.2/assets/js/amazeui.min.js"></script>
    <!--导入插件-->
    <script src="js/plugins/axios/dist/axios.js"></script>
    <script src="js/plugins/vue/dist/vue.js"></script>
    <script src="js/common.js"></script>
</head>
<body>
<div id="app">
    <div class="login-boxtitle">
        <a href="home/demo.html"><img alt="" src="../images/logobig.png"/></a>
    </div>
    <div class="res-banner">
        <div class="res-main">
            <div class="login-banner-bg"><span></span><img src="../images/big.jpg"/></div>
            <div class="login-box">
                <div class="am-tabs" id="doc-my-tabs">
                    <ul class="am-tabs-nav am-nav am-nav-tabs am-nav-justify">
                        <li class="am-active"><a href="">登录</a></li>
                        <li><a href="">邮箱注册</a></li>
                        <li><a href="">手机注册</a></li>
                    </ul>
                    <div class="am-tabs-bd">
                        <div class="am-tab-panel am-active">
                            <div class="login-form">
                                <form>
                                    <div class="user-name">
                                        <label for="user"><i class="am-icon-user"></i></label>
                                        <input type="text" v-model="accountForm.username" name="username" id="user" placeholder="邮箱/手机/用户名">
                                    </div>
                                    <div class="user-pass">
                                        <label for="password"><i class="am-icon-lock"></i></label>
                                        <input type="password" v-model="accountForm.password" name="" id="password" placeholder="请输入密码">
                                    </div>
                                </form>
                            </div>
                            <div class="login-links">
                                <label for="remember-me"><input id="remember-me"  type="checkbox">记住密码</label>
                                <a href="#" class="am-fr">忘记密码</a>
                                <br/>
                            </div>
                            <div class="am-cf">
                                <input type="submit" @click="accountLogin" name="" value="登 录"
                                       class="am-btn am-btn-primary am-btn-sm">
                            </div>
                            <div class="partner">
                                <h3>合作账号</h3>
                                <div class="am-btn-group">
                                    <li><a href="#"><i class="am-icon-qq am-icon-sm"></i><span>QQ登录</span></a></li>
                                    <li><a href="#"><i class="am-icon-weibo am-icon-sm"></i><span>微博登录</span> </a>
                                    </li>
                                    <li>
                                        <a href="https://open.weixin.qq.com/connect/qrconnect?appid=wxd853562a0548a7d0&redirect_uri=http://bugtracker.itsource.cn/callback.html&response_type=code&scope=snsapi_login&state=4a5d5615f93f24bdba2ba8534642dbb6#wechat_redirect"><i
                                                class="am-icon-weixin am-icon-sm"></i><span>微信登录</span> </a>
                                    </li>
                                </div>
                            </div>
                        </div>
                        <div class="am-tab-panel">
                            <form method="post">
                                <div class="user-email">
                                    <label for="email"><i class="am-icon-envelope-o"></i></label>
                                    <input type="email" name="" id="email" placeholder="请输入邮箱账号">
                                </div>
                                <!--                                <div class="user-email">-->
                                <!--                                    <label for="imageCode"><i class="am-icon-check am-icon-sm"></i></label>-->
                                <!--                                    <input type="text" v-model="emailRegisterForm.imageCodeValue" name="" style="width: 180px;"-->
                                <!--                                           id="imageCode" placeholder="请输入图片验证码">-->
                                <!--                                    <img id="captcha-image-temp" @click="getImageCode" :src="imageCode"-->
                                <!--                                         class="captcha-image-temp" alt="点击换图" title="点击换图"-->
                                <!--                                         style="vertical-align: middle; cursor: pointer;">-->
                                <!--                                </div>-->
                                <!--                                <div class="verification">-->
                                <!--                                    <label for="code"><i class="am-icon-code-fork"></i></label>-->
                                <!--                                    <input type="tel" v-model="emailRegisterForm.smsCode" name="" id="code" placeholder="请输入邮箱验证码">-->
                                <!--                                    <a class="btn" href="javascript:void(0);" @click="sendMobileCode"-->
                                <!--                                       id="sendMobileCode">-->
                                <!--                                        <span id="dyMobileButton">获取</span>-->
                                <!--                                    </a>-->
                                <!--                                </div>-->
                                <div class="user-pass">
                                    <label for="password"><i class="am-icon-lock"></i></label>
                                    <input type="password" name="" id="password" placeholder="设置密码">
                                </div>
                                <div class="user-pass">
                                    <label for="passwordRepeat"><i class="am-icon-lock"></i></label>
                                    <input type="password" name="" id="passwordRepeat" placeholder="确认密码">
                                </div>
                            </form>
                            <div class="login-links">
                                <label for="reader-me">
                                    <input id="reader-me" type="checkbox"> 点击表示您同意商城《服务协议》
                                </label>
                            </div>
                            <div class="am-cf">
                                <input type="submit" name="" value="注册" class="am-btn am-btn-primary am-btn-sm am-fl">
                            </div>
                        </div>
                        <div class="am-tab-panel">
                            <form method="post">
                                <div class="user-phone">
                                    <label for="phone"><i class="am-icon-mobile-phone am-icon-md"></i></label>
                                    <input type="tel" v-model="phoneRegisterForm.phone" name="" id="phone"
                                           placeholder="请输入手机号">
                                </div>
                                <div class="user-phone">
                                    <label for="imageCode"><i class="am-icon-check am-icon-sm"></i></label>
                                    <input type="text" v-model="phoneRegisterForm.imageCodeValue" name=""
                                           style="width: 180px;"
                                           id="imageCode" placeholder="请输入图片验证码">
                                    <img id="captcha-image-temp" @click="getImageCode" :src="imageCode"
                                         class="captcha-image-temp" alt="点击换图" title="点击换图"
                                         style="vertical-align: middle; cursor: pointer;">
                                </div>
                                <div class="verification">
                                    <label for="code"><i class="am-icon-code-fork"></i></label>
                                    <input type="tel" v-model="phoneRegisterForm.smsCode" name="" id="code"
                                           placeholder="请输入验证码">
                                    <a class="btn" href="javascript:void(0);" @click="sendMobileCode"
                                       id="sendMobileCode">
                                        <span id="dyMobileButton">获取</span></a>
                                </div>
                                <div class="user-pass">
                                    <label for="password"><i class="am-icon-lock"></i></label>
                                    <input type="password" v-model="phoneRegisterForm.password" name="" id="password"
                                           placeholder="设置密码">
                                </div>
                                <div class="user-pass">
                                    <label for="passwordRepeat"><i class="am-icon-lock"></i></label>
                                    <input type="password" v-model="phoneRegisterForm.passwordRepeat" name=""
                                           id="passwordRepeat" placeholder="确认密码">
                                </div>
                            </form>
                            <div class="login-links">
                                <label for="reader-me">
                                    <input id="reader-me" type="checkbox"> 点击表示您同意商城《服务协议》
                                </label>
                            </div>
                            <div class="am-cf">
                                <input type="submit" @click="phoneRegister" name="" value="注册"
                                       class="am-btn am-btn-primary am-btn-sm am-fl">
                            </div>
                            <hr>
                        </div>
                    </div>
                </div>
            </div>
        </div>
        <div class="footer ">
            <div class="footer-hd ">
                <p>
                    <a href="# ">恒望科技</a>
                    <b>|</b>
                    <a href="# ">商城首页</a>
                    <b>|</b>
                    <a href="# ">支付宝</a>
                    <b>|</b>
                    <a href="# ">物流</a>
                </p>
            </div>
            <div class="footer-bd ">
                <p>
                    <a href="# ">关于恒望</a>
                    <a href="# ">合作伙伴</a>
                    <a href="# ">联系我们</a>
                    <a href="# ">网站地图</a>
                    <em>© 2015-2025 Hengwang.com 版权所有. 更多模板
                        <a href="http://www.cssmoban.com/" target="_blank" title="模板之家">模板之家</a>
                        - Collect from
                        <a href="http://www.cssmoban.com/" title="网页模板" target="_blank">网页模板</a>
                    </em>
                </p>
            </div>
        </div>
    </div>
</div>
</body>
<script>
    $(function () {
        $('#doc-my-tabs').tabs();
    })
</script>
<script type="text/javascript">
    new Vue({
        el: "#app",
        data: {
            accountForm: {
                username: '',
                password: '',
                type: 1,
            },
            imageCodePrefix: 'data:image/jpeg;base64,',
            imageCode: '',
            phoneRegisterForm: {
                // 手机号
                phone: "",
                // 图形验证码
                imageCodeValue: "",
                // redis的key 也就是uuid 在localStorage
                imageCodeKey: "",
                passwordRepeat: "",
                password: "",
                smsCode: "",
            }
            // ,
            // emailRegisterForm:{
            //     // 邮箱号
            //     email:"",
            //     // 图形验证码
            //     imageCodeValue:"",
            //     // redis的key 也就是uuid 在localStorage
            //     imageCodeKey:"",
            //     passwordRepeat:"",
            //     password:"",
            //     smsCode:"",
            // }
        },
        methods: { // 函数
            accountLogin() {
                var param = {
                    username: this.accountForm.username, password: this.accountForm.password
                    , type: this.accountForm.type
                };
                // 请求后端接口
                this.$http.post("/login/account", param)
                    .then(result => {
                        console.log(param)
                        let res = result.data;
                        if (res.success) {
                            // 将 token 和logininfo保存到localstorage
                            let {token, logininfo} = res.resultObj;
                            localStorage.setItem("token", token)
                            localStorage.setItem("logininfo", JSON.stringify(logininfo))
                            // 跳转到echarts页面
                            // this.$router.push({ path: '/echarts' });
                            alert("登录成功")
                            location.href = "index.html"
                        } else {
                            alert("登录失败")
                        }

                    })
                    .catch(result => {
                    })
            },
            // 1.生成UUID的方法
            createUuid() {
                var s = [];
                var hexDigits = "0123456789abcdefghi";
                for (var i = 0; i < 36; i++) {
                    s[i] = hexDigits.substr(Math.floor(Math.random() * 0x10), 1);
                }
                s[14] = "4"; // bits 12-15 of the time_hi_and_version field to 0010
                s[19] = hexDigits.substr((s[19] & 0x3) | 0x8, 1); // bits 6-7 of the clock_seq_hi_and_reserved to 01
                s[8] = s[13] = s[18] = s[23] = "-";

                var uuid = s.join("");
                return uuid;
            },
            // 2.发起Axios请求获取图形验证码的方法
            getImageCode() {
                // 2.1.从localStorage中获取UUID
                let imageCodeKey = localStorage.getItem("registerImageCodeKey");
                // 2.2.判断当前浏览器本地是否有key值，没有则生成，有则直接使用
                if (!imageCodeKey || imageCodeKey === '') {
                    imageCodeKey = this.createUuid();
                    localStorage.setItem("registerImageCodeKey", imageCodeKey);
                }
                // 2.3.发送Axios请求，传递UUID，得到图形验证码的Base64字符串
                this.$http.get("/verifyCode/image/" + imageCodeKey).then(res => {
                    // 2.3.1.将接口返回的图形验证码Base64字符串码+前缀赋值给模型中的imageCode字段
                    this.imageCode = this.imageCodePrefix + res.data.resultObj;
                })
            },
            // 获取手机验证码
            sendMobileCode(event){
                // 1.判断手机号不为空
                if(!this.phoneRegisterForm.phone){
                    alert("手机号不能为空");
                    return;
                }
                // 2.判断图片验证码不为空
                if(!this.phoneRegisterForm.imageCodeValue){
                    alert("图片验证码不能为空");
                    return;
                }
                // 3.获取按钮，禁用按钮
                var sendBtn = $(event.target);
                sendBtn.attr("disabled",true);

                // 4.给图形验证码RedisKey赋值
                this.phoneRegisterForm.imageCodeKey = localStorage.getItem("registerImageCodeKey");

                //5.发送ajax请求
                this.$http.post("/verifyCode/smsCode",this.phoneRegisterForm).then(res=>{
                    var ajaxResult = res.data;
                    console.log(this.phoneRegisterForm)
                    if(ajaxResult.success){
                        alert("手机验证码已经发送到您的手机，请在3分钟内使用");
                        //5.1.发送成：倒计时
                        var time = 60;
                        var interval = window.setInterval( function () {
                            //每一条倒计时减一
                            time = time - 1 ;

                            //把倒计时时间搞到按钮上
                            sendBtn.html(time+"秒后重发");

                            //5.2.倒计时完成恢复按钮
                            if(time <= 0){
                                sendBtn.html("重新发送");
                                sendBtn.attr("disabled",false);
                                //清除定时器
                                window.clearInterval(interval);
                            }
                        },1000);
                    }else{
                        //5.3.发送失败：提示，恢复按钮
                        sendBtn.attr("disabled",false);
                        alert("发送失败:"+ajaxResult.msg);
                    }
                })
            },
            // 手机号注册
            phoneRegister() {
                this.$http.post("/verifyCode/phoneRegister", this.phoneRegisterForm).then(res => {
                    var ajaxResult = res.data;
                    if (ajaxResult.success) {
                        alert("注册成功！");
                        location.href = "index.html"
                    } else {
                        //5.3.发送失败：提示，恢复按钮
                        sendBtn.attr("disabled", false);
                        alert("发送失败:" + ajaxResult.msg);
                    }
                })
            }
            // ,
            // // 获取邮箱验证码
            // sendMobileCode(event){
            //     // 1.判断手机号不为空
            //     if(!this.emailRegisterForm.email){
            //         alert("邮箱号不能为空");
            //         return;
            //     }
            //     // 2.判断图片验证码不为空
            //     if(!this.emailRegisterForm.imageCodeValue){
            //         alert("图片验证码不能为空");
            //         return;
            //     }
            //     // 3.获取按钮，禁用按钮
            //     var sendBtn = $(event.target);
            //     sendBtn.attr("disabled",true);
            //
            //     // 4.给图形验证码RedisKey赋值
            //     this.emailRegisterForm.imageCodeKey = localStorage.getItem("registerImageCodeKey");
            //
            //     //5.发送ajax请求
            //     this.$http.post("/verifyCode/smsCode",this.emailRegisterForm).then(res=>{
            //         var ajaxResult = res.data;
            //         if(ajaxResult.success){
            //             alert("邮箱验证码已经发送到您的邮箱，请在3分钟内使用");
            //             //5.1.发送成：倒计时
            //             var time = 60;
            //             var interval = window.setInterval( function () {
            //                 //每一条倒计时减一
            //                 time = time - 1 ;
            //
            //                 //把倒计时时间搞到按钮上
            //                 sendBtn.html(time+"秒后重发");
            //
            //                 //5.2.倒计时完成恢复按钮
            //                 if(time <= 0){
            //                     sendBtn.html("重新发送");
            //                     sendBtn.attr("disabled",false);
            //                     //清除定时器
            //                     window.clearInterval(interval);
            //                 }
            //             },1000);
            //         }else{
            //             //5.3.发送失败：提示，恢复按钮
            //             sendBtn.attr("disabled",false);
            //             alert("发送失败:"+ajaxResult.msg);
            //         }
            //     })
            // },
            // // 电子邮件注册
            // emailRegister(){
            //     this.$http.post("/verifyCode/emailRegister",this.emailRegisterForm).then(res=>{
            //         var ajaxResult = res.data;
            //         if(ajaxResult.success){
            //             alert("注册成功！");
            //             location.href="index.html"
            //         }else{
            //             //5.3.发送失败：提示，恢复按钮
            //             sendBtn.attr("disabled",false);
            //             alert("发送失败:"+ajaxResult.msg);
            //         }
            //     })
            // }
        },
        mounted() { // 钩子函数
            this.getImageCode();
        }
    })
</script>
</html>